@echo off
rem ----------------------------------------
rem listfiles.bat
rem Usage: listfiles.bat [CarpetaOrigen] [ArchivoSalida]
rem   CarpetaOrigen: ruta de la carpeta a listar (opcional; si no se pasa, usa la carpeta actual)
rem   ArchivoSalida: nombre del .txt de salida (opcional; si no se pasa, usa "listado_archivos.txt")
rem Ejemplo:
rem   listfiles.bat "C:\MisCarpetas\Documentos" archivos.txt
rem ----------------------------------------

setlocal

rem Tomar primer parámetro como carpeta; si no existe, usar carpeta actual
set "folder=%~1"
if "%folder%"=="" (
    set "folder=%cd%"
)

rem Tomar segundo parámetro como nombre de archivo de salida; si no existe, usar por defecto
set "outfile=%~2"
if "%outfile%"=="" (
    set "outfile=listado_archivos.txt"
)

rem Verificar que la carpeta exista
if not exist "%folder%" (
    echo ERROR: La carpeta "%folder%" no existe.
    exit /b 1
)

rem Listar solo archivos (sin carpetas) en modo "bare" (/b) y redirigir a archivo
dir /a-d /b "%folder%" > "%outfile%"

echo Listado de archivos en "%folder%" guardado en "%outfile%".
endlocal
